#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<string.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
//
//int main()
//{
//  
//  int fda=open("log.txt",O_WRONLY | O_CREAT | O_TRUNC,0666);//不涉及掩码
//  printf("fda:%d\n",fda);
//
//  int fdb=open("log.txt",O_WRONLY | O_CREAT | O_TRUNC,0666);
//  printf("fdb:%d\n",fdb);
//
//  int fdc=open("log.txt",O_WRONLY | O_CREAT | O_TRUNC,0666);
//  printf("fdc:%d\n",fdc);
//  
//  close(3);
//  close(4);
//  close(5);
//  return 0;
//}

//
//int main()
//{
//  
//  char buf[10];
//  int s=read(0,buf,sizeof(buf));//返回的是输入字符的个数 “abcd\n\0"
//  
//   close(1);
//
//   int f=open("log.txt",O_WRONLY | O_CREAT | O_TRUNC,0666);
//  
//  if(s>0)
//  {
//   buf[s]='\0';
//    write(1,buf,sizeof(buf));
//    write(2,buf,sizeof(buf));
//  }
//
//  
//  return 0;
//}

//int main()
//{
//  //close(2);
//  //close(0);
//  
//  int fd = open("log.txt",O_WRONLY | O_CREAT | O_TRUNC,0666);
//  if(fd < 0) 
//  {
//    perror("open");
//    return 1;
//  }
//  
//  dup2(fd,1);
//  printf("hello log.txt\n");//printf 默认输出到1号文件，但是重定向了 
// fprintf(stdout,"hello log.txt\n");//printf 默认输出到1号文件，但是重定向了 
//  return 0;
//}
//

//int main()
//{
//  int fd=open("log.txt",O_RDONLY,0666);
// 
//  if(fd==-1)
//  {
//    perror("open");
//    
//    return 0; 
//  }
//
//  dup2(fd,0);
//
//  char buf[10]="";
//
//  while(1)
//  {
//    if(fgets(buf,sizeof(buf),stdin)==NULL) break;// linux 一个汉字占用3个字节。fgets会返回
//
//     printf("我从log.txt中读的：%s\n",buf);
//  }
//
//  return 0;
//}

int main()
{
 fprintf(stdout,"标准输出\n");
 
 fprintf(stderr,"标准错误\n");
  return 0;
}
